Nonvolatile memory systems with embedded fast read and write memories

ABSTRACT

A nonvolatile memory system is described with novel architecture coupling nonvolatile storage memory with random access volatile memory. New commands are included to enhance the read and write performance of the memory system.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation of U.S. patent application Ser. No.14/335,160, filed Jul. 18, 2014, published on Mar. 12, 2015, as U.S.Publication No. 2015-0070991. Application Ser. No. 14/335,160 is aContinuation of U.S. patent application Ser. No. 13/967,649, filed Aug.15, 2013, published on Mar. 13, 2014, as U.S. Publication No.2014-0071752, now U.S. Pat. No. 8,817,537, issued on Aug. 26, 2014.Application Ser. No. 13/967,649 is a Continuation of U.S. patentapplication Ser. No. 13/458,173, filed Apr. 27, 2012, published on Sep.20, 2012, as U.S. Publication No. 2012-0239863, now U.S. Pat. No.8,531,880, issued on Sep. 10, 2013. Application Ser. No. 13/458,173 is aContinuation of U.S. patent application Ser. No. 12/915,177, filed Oct.29, 2010, published on Mar. 10, 2011, as U.S. Publication No.2011-0060870, now U.S. Pat. No. 8,194,452, issued on Jun. 5, 2012.Application Ser. No. 12/915,177 is a Continuation of U.S. patentapplication Ser. No. 12/256,362, filed Oct. 22, 2008, published on Apr.30, 2009, as U.S. Publication No. 2009-0109787, now U.S. Pat. No.7,855,916, issued on Dec. 21, 2010. Application Ser. No. 12/256,362claims benefit of U.S. Provisional Application No. 60/982,175, filedOct. 24, 2007.

U.S. Pat. Nos. 8,817,537; 8,531,880; 8,194,452; and 7,855,916; andPatent Application Publication Nos. 2015-0070991; 2014-0071752;2012-0239863; 2011-0060870; and 2009-0109787 are hereby incorporated byreference in their entireties.

BACKGROUND

Nonvolatile memory systems, subsystems and integrated circuits are usedin multiple consumer, computer and communications applications. They canbe a NAND flash memory IC or NOR flash memory. Part of the memory systemmay contain volatile memory like static random access memory (SRAM) ordynamic random access memory (DRAM). They can be many IC's mounted on amemory card or module. A subsystem may contain at least one such moduleand a memory controller. A system may contain several subsystems as wellas multi core CPU's (Central Processing Unit). The memory integratedcircuits used in such a system may be SLC (single level) or MLC (multilevel) storage. The read/write access ports to the system may be singleported or multi ported.

Today's dominant memory is flash. In flash, the dominant architecture isNAND flash. In spite of the fact that the internal IC architecture ofNAND (or for that matter other flash architectures like NOR, OneNAND™)has “page” architecture for read and write access, the performance (readtime, program/write time) is slow compared to volatile memory systemsbuilt with SRAMs and DRAMs. The “page” architecture in NAND indeed has“static latches” that can temporarily store data as a buffer (one pageper block), and sometimes have an additional “write cache buffer” forthe whole IC. The page is 1 KB (1,024 bytes) to 2 KB (2,048 bytes). Eachnonvolatile memory block of NAND flash memory cells, may have 64 to 128pages (or, 128 KB to 256 KB). Still, the performance is relatively poorto mediocre at best from a randomly and independently accessibleperspective per each byte of data. The “page buffered architecture” oftoday's NAND flash memory does not lend itself to true, fast, read andwrite memory access for SSD (solid state disk) and similar commercialapplications in PCs and servers for data computation, storage andmultimedia execution.

The invention described in this utility patent application focuses onways to modify the already existing “buffers” in an optimal manner toenhance the random access performance of nonvolatile IC, subsystem andsystem. The volatile random access memory (RAM) in a preferredembodiment is a 6-transistor SRAM memory cell at the core, and completeperipheral address decoding circuitry for independent accessible access(read, write etc) at a fine grain level of a bit, or byte. In anotherembodiment, the volatile RAM in each block can be an 8-transistordual-ported SRAM. In another embodiment, the nonvolatile memory can be aDRAM. The invention is applicable to other nonvolatile or pseudo nonvolatile memories like PCM (phase change memory), nano crystallinememory, charge trapped memory, ferroelectric memory, magnetic memory,plastic memory and similar embodiments.

SUMMARY

The preferred embodiment adds new commands to be executed in the CommandRegister of the NVM (nonvolatile memory). In other embodiments, thesecommands can be shared between the NVM IC and memory controller. Priorart NVM IC's have limited commands like (1) read page in flash; (2)erase block in flash; (3) program page in flash, etc. With thisinvention, new additional commands are executed: (4) read page in theSRAM of the block only; (5) read new page from the nonvolatile memory(NVM) block; (6) write page into SRAM of the block, but, not programinto the NVM block until such a command is additionally given. Thisinvention provides every page of each NVM block as an independentlyaccessible random access memory to perform load/store applications, aswell as a coupled memory to the assigned NVM block. Each NVM NAND flashmay have 1,024 such blocks. Each block is typically 64 kilobytes indensity. Page for each block is typically 1 to 2 kilobytes and each bitis independently addressable in a random manner, as well as accessed ina random manner. Error correction and detection to the memory on a pagebasis can be implemented as well either on the NVM IC or in the memorycontroller.

Another preferred embodiment selects any of the currently unused blocksand uses the SRAM pages in those blocks to perform other operations asnecessary. Such data manipulating operations can be arithmetic and/orlogic operations. In another preferred embodiment, the “volatile memoryof a page” is a DRAM. That DRAM, again, is independently accessible andaddressable in a random manner.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding, reference is now made to thefollowing description taken in conjunction with the accompanyingDrawings in which:

FIG. 1 is a diagram showing a nonvolatile memory system with features asdescribed for the present invention.

FIG. 2 shows an exemplary NAND memory integrated circuit as one elementof the NVMS (nonvolatile memory system).

FIG. 3 shows various components of a controller for the nonvolatilememory system (NVMS) of this invention.

FIG. 4 shows a novel implementation of block erase per this invention.

FIG. 5 shows a flash memory controller with block erase feature.

FIG. 6 shows a current NAND flash chip architecture by Samsung.

FIG. 7 shows a pin out for a 1 Gb Samsung flash memory.

FIG. 8 shows some operational features of the above Samsung flashmemory.

FIG. 9 shows how the invention of this patent distinguishes itself fromtoday's nonvolatile memory.

FIG. 10 shows improved features of this invention compared to currentlyavailable (commercial) multichip NVMS solutions.

FIG. 11 shows how the “random access memory” of this invention can beimplemented in dual port access for enhanced performance.

FIG. 12 shows a high level architecture of the NVMS of this inventionwhich comprises both nonvolatile and volatile memory.

DETAILED DESCRIPTION

Referring now to the drawings, wherein like reference numbers are usedherein to designate like elements throughout, the various views andembodiments of nonvolatile memory systems with embedded fast read andwrite memories are illustrated and described, and other possibleembodiments are described. The figures are not necessarily drawn toscale, and in some instances the drawings have been exaggerated and/orsimplified in places for illustrative purposes only. One of ordinaryskill in the art will appreciate the many possible applications andvariations based on the following examples of possible embodiments.

Each NAND flash memory commercially available (in various pinouts/densities) today has a 512 B-1 KB-2 KByte page in a 64 Kb to 128KByte block (a block contains at least one sector), 64 rows worth ofdata, 1 page/sector. To write one page takes about 200 μs. There areabout 1,024 sectors in a 1 Gbit flash (NAND). So each NAND flash chiphas 1 Mb SRAM (1 k pages). The invention requires each page to have“bit-to-bit” NVM back up (nonvolatile SRAM). So a page can be copieddirectly to the NVM as needed. This additional row can be in the sectoritself. Address/control logic to accommodate this page can be easilydone in the sector, if needed.

Page invention—Modify page as shown in Samsung K9F1G08R0A (1 GbitNANDflash). In the Samsung device, Page is approximately 2 KByte+64 bits(for some kind of Ecc) in each 128 KByte block. There are 1K blocks,each of 128 KBytes (inclusive of Page). The Page has no direct identity(namely, it is not a register or RAM with independent random address andcommand executions)—it is temporary storage buffer to help executeread/write to nonvolatile array. Since each block (sector) isaddressable, one can have a “Tag address bit”—if enabled it can activate“page addressing.”

Control Page—Nonvolatile array communication with a ‘Switch’ wherevolatile and nonvolatile memory can be accessed (unlike currentart)—then page 2 Kbytes can be used as independent RAM for other usefulpurposes. One preferred embodiment—Select any of the currently unusedblocks and use that/those pages as a modified SRAM; access that SRAM bycurrently used NC pins and rename them. Even with “concurrentRead/Write”, “write cache buffering” and other features, most blocksamong the (1,024 or more) many in a NAND flash chip are unused while oneor two blocks are being accessed (read, write, erase). The associated“page buffers” are also unused and wasted. In this preferred embodiment,a page of the currently unused block's page (2K Bytesx 1K blocks is 2MBytes of SRAM per chip—with a little overhead circuitry it can be 2MBytes of SRAM with multiple port access as well) can be read andwritten (random page access, random access within a page, serial accessfrom a page etc.). There are plenty of NC pins available in commerciallyavailable NAND flash ICs (one example is provided in FIG. 7)—we canconfigure NC pins to be used as Address, DATA, Command, Control in acombination. In parallel, the NAND flash can concurrently operate.

The concepts of SRAM mode by using available pages can also beimplemented in Samsung's one NAND™ flash (for example), NOR flash oreven Serial EEPROM flash—The exact implementation, page/latch size,command set may vary. The concepts of SRAM mode by using available pagescan also be implemented in traditional NOR flash, as well, with slightmodifications (e.g., one row equivalent page in every block or sector,on chip cache, boot code, data buffers). The concepts of SRAM mode canalso be implemented in other nonvolatile memory devices (and theircontrollers) e.g., FeRAM, MRAM, Phase change RAM/memory, CNT RAM, NROM(Saifun) and similar ones. All these concepts can configure the multiplefunctions of the device or combination there of by (1) control/commandsignals, (2) programmable registers, (3) mode registers, (4) commandregister, etc—they can reside in part or in whole in controller, memory,special control, command, interface chip or even CPU.

It should be made clear that the “pages” and “buffers” mentioned inthese pages titled “NVMS” do not necessarily have to be (1) staticlatches (6 transistor latches) or (2) traditional SRAM's. They can beDRAM's as is known widely in the industry. They can be MRAM, FeRAM(ferroelectric) or other similar concepts (molecular RAM etc). Theimplementation of a nonvolatile memory system may contain theseconfigurable NVMS chips as described here (one or more). ConfigurableNVMS can be combined with commodity NOR/NAND/One NAND, flash chips,controllers, PSRAM's, DRAM's, or other similar functions to offer atotal “system-in-package” (SIP) or “system-on-chip” (SOC).

In order to conserve operating power, the unselected, yet availablepages can be in a “stand by” mode—namely, reduced Vcc (power supplyvoltage), until the access to that page is required. Such a, ‘cycle lookahead’, can be built into the memory chip, or provided by controller (onchip or off chip). A battery back up for the SRAM part of the device canbe a very attractive option for a very large density total nonvolatilestatic random access memory (NVSRAM) that can go into a broad range ofapplications in computer, consumer, communications etc. Maxim suppliesNVSRAM's—no flash IC in NVSRAM. A “power triggered switch-off/on”(Similar to what Simtek's NVSRAM's do) is also possible, thuseliminating the “battery option”.

Commands/Instructions are given as follows, in a preferred embodiment,which vary between NAND, One NAND, NOR, serial flash etc. Traditionalflash: Read page in flash, Erase block in flash, Program page in flash,Etc. New commands with these inventions: Read page as SRAM/RAM, Writepage as SRAM/RAM, Read/Modify/W Write page as SRAM/RAM, Read byte out ofa page, etc; Write byte out of a page etc. Nibble mode/Serialaccess/double data rate are all possible.

The “address boundary” for a commercial NAND flash (especially in burstmode access e.g., burst READ) is different than a “2K byte” NAND flashpage. The address boundary does/should not deter by using the inventionsmentioned here for a superior READ (intelligent caching) or WRITEperformance. Most flash systems are weighted to MOSTLY READ and FEWERASE/PROGRAM (WRITE) due to the obvious endurance limitations(write/erase cycles limit). Hence, any performance in READ—Speed, andavailable Storage space—is always beneficial to a stand alone die and/orcard, module, subsystem, system. To write to a page or pseudo page,WRITE command and immediately PROGRAM SUSPEND to invalidate writing intoNVM. The data should be in page/pseudo page. This is one example.

As described in earlier pages, the page latches are available forreading. The pages can be read a byte (8 bits) or 2 bytes (16 bits) at atime. The whole page 2K bytes, can be sequentially accessed in 20-25ns/byte. The subject invention uses the pages as a content addressablememory (CAM) and the NVM core as the stored data. The match lines (asused in CAM's—refer to U.S. Pat. Nos. 6,310,880 and 6,597,596 which usea DRAM storage) can be connected to the pages. The addresses in eachblock can be sequentially read, until the MATCH is found.

What is claimed is:
 1. A nonvolatile memory system comprising: anonvolatile memory for storage of digital information arranged inmultiple blocks for access; a volatile random access memory for read andwrite operations coupled to said nonvolatile memory; wherein thevolatile random access memory and nonvolatile memory are controlled byone or more controllers; wherein the nonvolatile memory system iscoupled to a central processing unit; wherein each block of thenonvolatile memory for storage has one or more pages of stored dataaccessible through the coupled volatile random access memory; andwherein each page of a block is adapted to be substituted on the fly forany other page of a different block through address mapping; wherein theone or more controllers control the volatile and nonvolatile memoriesto: perform a read operation on the portion of the digital informationto be read and retrieving and storing such from the given block at theassociated addressable location, perform a read operation from thevolatile memory of any portion or all of the stored digital informationin the volatile memory, perform a write operation on any portion of theaccessed read digital information from the volatile memory back to thesame physical location in the volatile memory for storage therein, andwrite the digital information stored in the volatile memory back to thenonvolatile memory at a different physical location with the sameassociated address from which it was read.
 2. The nonvolatile memorysystem of claim 1 wherein the nonvolatile memory for storage is afloating gate flash memory.
 3. The nonvolatile memory system of claim 1wherein the nonvolatile memory for storage is a phase change memory. 4.The nonvolatile memory system of claim 1 wherein the nonvolatile memoryfor storage is a magnetic memory.
 5. The nonvolatile memory system ofclaim 1 wherein the nonvolatile memory for storage is a ferroelectricmemory.
 6. The nonvolatile memory system of claim 1 wherein thenonvolatile memory for storage is a molecular memory.
 7. The nonvolatilememory system of claim 1 wherein the volatile random access memory is aSRAM with at least one port for read and write access.
 8. Thenonvolatile memory system of claim 1 wherein the volatile random accessmemory is a dynamic random access memory with at least one port for readand write access.
 9. The nonvolatile memory system of claim 1 whereinthe volatile random access memory is a pseudo static RAM with at leastone port for read and write access.
 10. The nonvolatile memory system ofclaim 1 wherein the pages are randomly addressable and accessible. 11.The nonvolatile memory system of claim 10 wherein each of the randomlyaddressable and accessible pages is capable of addressing at least onebit in each access.
 12. The nonvolatile memory system of claim 1 whereinthe pages are serially addressable and accessible.
 13. The nonvolatilememory system of claim 1 wherein the pages are randomly and seriallyaddressable and accessible.